草庐IT

JavaFX - 许多静态 FXML Controller

全部标签

java - slider 与进度条 JavaFX 的混合

我想像在slider上一样处理ProgressBar上的点击。并学习一定百分比的轨道。我会使用slider而不是progressbar但它没有突出显示的轨道直到拇指。我需要创建一些东西,比如在播放歌曲的音乐播放器中的进度,以及通过点击进度来寻找的可能性。有人知道我该怎么做吗? 最佳答案 这是另一种方法。slider和进度条的真正混合:)。认识SlidoProgressBar!publicclassSlidoProgressBarDemoextendsApplication{@Overridepublicvoidstart(Stage

java - 在 JavaFX 中显式定位节点

当我点击一个按钮时,它改变了它的位置。但是当我移动鼠标时,按钮又回到了场景的中心,为什么?我有以下代码:publicclassHolaMundoextendsApplication{Buttonbtn;Scenescene;@Overridepublicvoidstart(StageprimaryStage){btn=newButton();btn.setText("HolaMundo");StackPaneroot=newStackPane();root.getChildren().add(btn);scene=newScene(root,300,250);primaryStage.

Java - 避免静态函数的 switch 语句

检查这段代码-switch(kind){case"green":GreenKind.doSomething();//Staticfunctionbreak;case"white":WhiteKind.doSomething();//Staticfunctionbreak;case"blue":BlueKind.doSomething();//Staticfunctionbreak;case"yellow":YellowKind.doSomething();//Staticfunctionbreak;}有办法避免switch语句吗?因为它闻起来很糟糕。也许是这样的?-kinds.get(

Javafx Listview 添加和编辑元素

我想直接向ListView添加和编辑元素:/**Tochangethislicenseheader,chooseLicenseHeadersinProjectProperties.*Tochangethistemplatefile,chooseTools|Templates*andopenthetemplateintheeditor.*/packagejavafx_test;importjava.util.Observable;importjavafx.application.Application;importjavafx.collections.FXCollections;impo

java - 为什么这个 Java 静态字段为空?

publicclassStaticTest{privatestaticStringa;privatestaticStringb="thisis"+a;publicstaticvoidmain(String[]args){a="test";System.out.println(b);//prints"thisisnull"}}我对b的值感到困惑。我认为结果应该是“thisistest”,但结果是“thisisnull”。为什么? 最佳答案 其他人已经解释了为什么它以这种方式工作。但是,有一些方法可以在您引用它时计算该值。private

JavaFX Canvas 未拾取关键事件

我有以下代码显示具有3个连续helloworld的JavaFXCanvasStackPaneroot=newStackPane();Canvascanvas=newCanvas(250,250);canvas.setOnMouseEntered((a)->System.out.println("hi"));canvas.setOnMousePressed((a)->System.out.println("focus"));canvas.setOnKeyReleased(newEventHandler(){@Overridepublicvoidhandle(KeyEventevent){

java - JavaFx/FXML 中的 "Node"是什么?

JavaFx/FXML上下文中的“节点”一词是什么意思?如果我搜索这个问题,我发现的只是人们使用该术语讨论其他问题,但没有任何解释。例如,这个问题的答案:HowdoIopentheJavaFXFileChooserfromacontrollerclass?:Foranynodeinyourscene(forexample,therootnode;butanynodeyouhaveinjectedwith@FXMLwilldo),dochooser.showOpenDialog(node.getScene().getWindow());节点是什么,我将如何“用@FXML注入(inject

java - 如何从 main 方法调用非静态方法?

这个问题在这里已经有了答案:Java:HowToCallNonStaticMethodFromMainMethod?(9个回答)关闭7年前。例如,我正在尝试做这样的事情publicclassTest{publicstaticvoidmain(Stringargs[]){int[]arr=newint[5];arrPrint(arr);}publicvoidarrPrint(int[]arr){for(inti=0;i我收到一条错误消息,告诉我无法从静态环境中引用非静态变量。那么,如果这是真的,我将如何在main中使用非静态方法?

java - 静态同步函数如何工作?

这个问题在这里已经有了答案:Javasynchronizedstaticmethods:lockonobjectorclass(8个答案)关闭9年前。当一个Java成员需要线程安全时,我们喜欢下面的做法:publicsynchronizedvoidfunc(){...}此语法等同于:publicvoidfunc(){synchronized(this){....}}也就是说,它实际上使用this来获取锁。我的问题是,如果我使用synchronized和static方法,如下所示:classAA{privateAA(){}publicstaticsynchronizedAAgetInst

java - 如何在 JavaFX 中获取当前打开的阶段?

有没有办法在JavaFX中获取当前打开的Stage(如果有一个打开的)?像这样:StagenewStage=newStage();newStage.initOwner(JavaFx.getCurrentOpenedStage());//Likethis 最佳答案 Java9通过添加javafx.stage.Window.getWindows()方法使这成为可能。因此,您可以获取Windows列表并查看正在显示的内容Listopen=Stage.getWindows().stream().filter(Window::isShowin